package com.pxst.fx.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;

/**
 * Settlement_子下发订单
 * @TableName sys_fx_order_child
 */
@TableName(value ="sys_fx_order_child")
@Data
public class SysFxOrderChildEntity implements Serializable {
    /**
     * 子下发ID
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * postscript
     */
    private String postscript;

    /**
     * 下发ID
     */
    private Long fxOrderMainId;

    /**
     * 过往子下发ID
     */
    private Long preFxOrderChildId;

    /**
     * 银行卡ID (from)
     */
    private Long fromBankCardId;

    /**
     * 第三方串接ID
     */
    private Long thirdPartyConfigId;

    /**
     * 交易种类
     */
    private Integer txnMode;

    /**
     * 用户发起金额
     */
    private BigDecimal requestAmount;

    /**
     * 实际作用金额
     */
    private BigDecimal paidAmount;

    /**
     * 系统手续费
     */
    private BigDecimal rate;

    /**
     * 银行手续费
     */
    private BigDecimal bankFee;

    /**
     * 第三方下發银行手续费 壹支付承担
     */
    private BigDecimal tpiBankFee;

    /**
     * 余额 (from)
     */
    private BigDecimal balance;

    /**
     * 交易前余额 (from)
     */
    private BigDecimal preBalance;

    /**
     * 讯银余额 (from)
     */
    private BigDecimal balanceXy;

    /**
     * 讯银交易前余额 (from)
     */
    private BigDecimal preBalanceXy;

    /**
     * 商户钱包余额
     */
    private BigDecimal merchantWalletBalance;

    /**
     * 币别
     */
    private String currency;

    /**
     * 讯银步骤
     */
    private String step;

    /**
     * 执行次数
     */
    private Integer retryTimes;

    /**
     * 是否点选过按钮
     */
    private Integer isPressButton;

    /**
     * "讯银回传状态
                                                                1.Pending–等待机器人跑
                                                                2.Processing–机器人正在跑
                                                                3.Completed–成功交易
                                                                4.Manual process–失败后的手动操作
                                                                人工可操作成成功或失败（如果交易试成功的）
                                                                5.Failed–失败, 不可更改状态
                                                                BS200"
     */
    private Integer status;

    /**
     * "手动操作状态: BS200
                                                                    1 Uploaded(成功)
                                                                    0 Unknown Error After Otp(失败)"
     */
    private Integer action;

    /**
     * 备注
     */
    private String message;

    /**
     * 我们的单号
     */
    private String commandId;

    /**
     * 虚拟银行对账单id
     */
    private Integer bankBillId;

    /**
     * OTP发起时间
     */
    private Date optStartTime;

    /**
     * OTP倒数时间
     */
    private Integer otptimer;

    /**
     * ref_code
     */
    private String refCode;

    /**
     * bankreferenceno
     */
    private String bankReferenceNo;

    /**
     * 状态0：未送出过1：已送出过
     */
    private Integer isRefCode;

    /**
     * 是否手动添加  1.是
     */
    private Integer isEntry;

    /**
     * VND OTP
     */
    private String vndOtp;

    /**
     * VND 出款方式
     */
    private String vndPaymentMethod;

    /**
     * 备注
     */
    private String note;

    /**
     * U盾token input
     */
    private String tokenInput;

    /**
     * xy_to_man
     */
    private String xyToMan;

    /**
     * 创建人员
     */
    private String creator;

    /**
     * 更新人员
     */
    private String updater;

    /**
     * 创建时间
     */
    private Date createdAt;

    /**
     * 更新时间
     */
    private Date updatedAt;

    /**
     * 当地创建时间
     */
    private Date localCreatedAt;

    /**
     * 当地创建时间
     */
    private Date localUpdatedAt;

    /**
     * vpn信息ID
     */
    private Integer vpnId;

    /**
     * alt_vpn_id
     */
    private Integer altVpnId;

    /**
     * 回到市场次数
     */
    private Integer isLateTimes;

    /**
     * 异常单 0.非异常,1.异常,2.已解决
     */
    private Integer isWeird;

    /**
     * 描述
     */
    private String description;

    /**
     * 外部描述
     */
    private String externalDescription;

    /**
     * 催单 0.无动作,1.进行催单
     */
    private Integer isUrgent;

    /**
     * 自身返点
     */
    private BigDecimal keepPoint;

    /**
     * 上级返点
     */
    private BigDecimal superiorKeepPoint;

    /**
     * 冻结黑马币
     */
    private BigDecimal frozenAvailableBalance;

    /**
     * 冻结保证金
     */
    private BigDecimal frozenGuaranteeBalance;

    /**
     * 重新整理点击次数
     */
    private Integer runmonNumber;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}